<template>
  <div>
    <div class="top">
      <el-row :gutter="20">
        <el-col :span="8"
          ><div class="grid-content bg-purple">
            <span class="left" @click="togoback"></span>
            <span class="title">反馈详情</span>
          </div></el-col
        >
        <el-col :span="16"
          ><div class="grid-content bg-purple">
            <div
              style="float: right; margin-right: 40px"
              v-if="this.$route.query.buttonStatus && this.$route.query.stageId"
            >
              <div v-if="accountId">
                <el-button
                  type="primary"
                  class="setting_btn"
                  v-has="'M1108018'"
                  v-show="feedBackLoadDtoList.draftTag"
                  @click="releaseVersion(feedBackLoadDtoList.id)"
                  >编辑</el-button
                >
                <el-button
                  type="primary"
                  class="setting_btn"
                  @click="application"
                  v-show="
                    feedBackLoadDtoList.continueToBeTag &&
                      !feedBackLoadDtoList.draftTag &&
                      feedBackStatus != (2 || 3) &&
                      feedBackStatus === 1 &&
                      feedBackLoadDtoList.stage != '1423154037607493634'
                  "
                  v-has="'M1108004'"
                  size="mini"
                  >申请上会</el-button
                >
                <el-button
                  type="primary"
                  class="setting_btn"
                  @click="transferRow"
                  v-show="
                    feedBackLoadDtoList.draftTag === false &&
                      feedBackStatus === 1 &&
                      feedBackLoadDtoList.stage != '1423154037607493634'
                  "
                  v-has="'M1108009'"
                  size="mini"
                  >转让</el-button
                >
                <el-button
                  type="primary"
                  class="setting_btn mr"
                  v-has="'M1108003'"
                  v-show="feedBackLoadDtoList.draftTag === false && feedBackLoadDtoList.stage != '1423154037607493634'"
                  @click="updateRow"
                  size="mini"
                  >更新进度</el-button
                >
              </div>
              <div v-else>
                <el-button
                  type="primary"
                  class="setting_btn"
                  v-has="'M1108010'"
                  v-show="(feedBackStatus === 2 || feedBackStatus === 3) && feedBackLoadDtoList.draftTag === false"
                  @click="startRow"
                  >激活</el-button
                >
                <el-button
                  type="primary"
                  class="setting_btn"
                  @click="confirmRow"
                  v-show="feedBackLoadDtoList.draftTag === false && feedBackLoadDtoList.stage === '1423154037607493634'"
                  v-has="'M1108011'"
                  size="mini"
                  >确认</el-button
                >
                <el-button
                  type="primary"
                  class="setting_btn"
                  @click="rebackRow"
                  v-show="feedBackLoadDtoList.draftTag === false && feedBackLoadDtoList.stage === '1423154037607493634'"
                  size="mini"
                  v-has="'M1108012'"
                  >回退</el-button
                >
                <el-button
                  type="primary"
                  @click="suspendRow"
                  v-show="
                    feedBackLoadDtoList.draftTag === false &&
                      feedBackStatus === 1 &&
                      feedBackLoadDtoList.stage != '1423154037607493634'
                  "
                  v-has="'M1108001'"
                  class="setting_btn"
                  size="small"
                  >终止</el-button
                >
                <el-button
                  type="primary"
                  class="setting_btn mr"
                  @click="closeRow"
                  v-show="
                    feedBackLoadDtoList.draftTag === false &&
                      feedBackStatus === 1 &&
                      feedBackLoadDtoList.stage != '1423154037607493634'
                  "
                  size="mini"
                  v-has="'M1108002'"
                  >关闭</el-button
                >
                <el-button
                  type="primary"
                  class="setting_btn mr"
                  v-has="'M1108003'"
                  v-show="feedBackLoadDtoList.draftTag === false && feedBackLoadDtoList.stage != '1423154037607493634'"
                  @click="updateRow"
                  size="mini"
                  >更新进度</el-button
                >
                <el-dropdown :hide-timeout="500">
                  <el-button
                    type="primary"
                    class="setting_btn mr"
                    v-show="
                      !feedBackLoadDtoList.draftTag &&
                        feedBackStatus != (2 || 3) &&
                        feedBackStatus === 1 &&
                        feedBackLoadDtoList.stage != '1423154037607493634'
                    "
                  >
                    更多操作<i
                      class="
                                            el-icon-arrow-down
                                            el-icon--right
                                        "
                    ></i>
                  </el-button>
                  <el-dropdown-menu slot="dropdown">
                    <el-dropdown-item
                      v-has="'M1108004'"
                      class="applicationItem"
                      v-show="feedBackLoadDtoList.continueToBeTag"
                      ><div @click="application">
                        <span
                          class="
                                                    hoverMenuItem
                                                    application
                                                "
                        ></span
                        ><span>申请上会</span>
                      </div></el-dropdown-item
                    >
                    <el-dropdown-item v-has="'M1108005'" class="turnTaskItem"
                      ><div @click="taskRow">
                        <span class="hoverMenuItem turnTask"></span><span>转任务</span>
                      </div></el-dropdown-item
                    >
                    <el-dropdown-item v-has="'M1108006'" class="turnDemandItem"
                      ><div @click="demandRow">
                        <span class="hoverMenuItem turnDemand"></span><span>转需求</span>
                      </div></el-dropdown-item
                    >
                    <el-dropdown-item v-has="'M1108007'" class="turnBugItem"
                      ><div @click="bugRow">
                        <span class="hoverMenuItem turnBug"></span><span>转BUG</span>
                      </div></el-dropdown-item
                    >
                    <el-dropdown-item v-has="'M1108008'" class="creatFeedItem"
                      ><div @click="creatFeedRow">
                        <span class="hoverMenuItem creatFeed"></span><span>绑定反馈</span>
                      </div></el-dropdown-item
                    >
                    <el-dropdown-item
                      class="transferItem"
                      v-has="'M1108009'"
                      v-show="
                        feedBackLoadDtoList.draftTag === false &&
                          feedBackStatus === 1 &&
                          feedBackLoadDtoList.stage != '1423154037607493634'
                      "
                      ><div @click="transferRow">
                        <span class="hoverMenuItem transfer"></span><span>转让</span>
                      </div></el-dropdown-item
                    >
                    <el-dropdown-item v-has="'M1108016'" class="creatFeedItem"
                      ><div @click="bugRows(feedBackLoadDtoList.feedBackNumber)">
                        <span class="hoverMenuItem creatFeed"></span><span>绑定BUG</span>
                      </div></el-dropdown-item
                    >
                    <el-dropdown-item v-has="'M1108017'" class="creatFeedItem"
                      ><div @click="needRow(feedBackLoadDtoList.feedBackNumber)">
                        <span class="hoverMenuItem creatFeed"></span><span>绑定需求</span>
                      </div></el-dropdown-item
                    >
                  </el-dropdown-menu>
                </el-dropdown>
              </div>
            </div>
          </div></el-col
        >
      </el-row>
    </div>

    <el-row :gutter="20" style="margin: 30px; top: 80px">
      <el-col :span="16">
        <div style="background: #fff; padding: 15px; border-radius: 5px">
          <el-form
            :rules="rules"
            :model="feedBackLoadDtoList"
            ref="feedbackForm"
            class="detailsForm"
            label-width="126px"
          >
            <el-row :gutter="10">
              <el-col :span="12">
                <el-form-item
                  label="产品名称"
                  prop="productId"
                  :rules="{
                    required: true,
                    message: '请选择产品名称',
                    trigger: 'select'
                  }"
                >
                  <el-select class="userSelect" v-model="feedBackLoadDtoList.productId" placeholder="" disabled>
                    <el-option v-for="(item, index) in ProductList" :key="index" :label="item.name" :value="item.id">
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
              <el-col :span="12">
                <el-form-item label="营销项目名称">
                  <el-select v-model="feedBackLoadDtoList.marketProjectSecond" placeholder="" disabled>
                    <el-option
                      v-for="(item, index) in MarketingProjectName"
                      :key="index"
                      :label="item.title"
                      :value="item.id"
                    >
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="12">
                <el-form-item label="版本号">
                  <el-input v-model="feedBackLoadDtoList.versionNumber" disabled></el-input>
                </el-form-item>
              </el-col>
              <el-col :span="12">
                <el-form-item label="营销项目状态">
                  <el-select v-model="feedBackLoadDtoList.marketProjectFirst" placeholder="" disabled>
                    <el-option
                      v-for="(item, index) in problemTypeList"
                      :key="index"
                      :label="item.title"
                      :value="item.id"
                    >
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="12">
                <el-form-item label="创建人">
                  <el-select v-model="feedBackLoadDtoList.creator" disabled>
                    <el-option v-for="item in userList" :key="item.id" :label="item.name" :value="item.id"> </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
              <el-col :span="12">
                <el-form-item label="创建部门">
                  <el-input v-model="feedBackLoadDtoList.creatDepartMent" disabled></el-input>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="12">
                <el-form-item label="指派人">
                  <el-select v-model="feedBackLoadDtoList.userId" disabled>
                    <el-option v-for="item in userList" :key="item.id" :label="item.name" :value="item.id"> </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
              <el-col :span="12">
                <el-form-item label="指派部门">
                  <el-input v-model="feedBackLoadDtoList.designDepartMent" disabled></el-input>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="12">
                <el-form-item label="阶段">
                  <el-select v-model="feedBackLoadDtoList.stage" disabled>
                    <el-option v-for="(item, index) in childStageList" :key="index" :label="item.name" :value="item.id">
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
              <el-col :span="12">
                <el-form-item label="创建时间">
                  <el-input v-model="feedBackLoadDtoList.createdAt" disabled></el-input>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="12">
                <el-form-item label="反馈来源">
                  <el-select v-model="feedBackLoadDtoList.feedBackSource" placeholder="" disabled>
                    <el-option
                      v-for="(item, index) in feedBackSourceList"
                      :key="index"
                      :label="item.title"
                      :value="item.id"
                    >
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
              <el-col :span="12">
                <el-form-item label="反馈ID">
                  <el-input v-model="feedBackLoadDtoList.feedBackNumber" disabled></el-input>
                </el-form-item>
              </el-col>
            </el-row>
            <p class="titles" style="margin: 10px 0">
              反馈详情描述
            </p>
            <el-row :gutter="10">
              <el-col :span="24">
                <el-form-item label="标题" prop="title">
                  <el-input v-model="feedBackLoadDtoList.title" placeholder="" disabled></el-input>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="12">
                <el-form-item label="问题大类">
                  <el-select v-model="feedBackLoadDtoList.problemTypeParent" placeholder="" disabled>
                    <el-option
                      v-for="(item, index) in marketProjectFirstList"
                      :key="index"
                      :label="item.name"
                      :value="item.id"
                    >
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
              <el-col :span="12">
                <el-form-item label="问题小类">
                  <el-select v-model="feedBackLoadDtoList.problemType" placeholder="" disabled>
                    <el-option
                      v-for="(item, index) in marketProjectSecondList"
                      :key="index"
                      :label="item.name"
                      :value="item.id"
                    >
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="24" class="specialCol">
                <el-form-item label="问题描述">
                  <div @dblclick="lookInLargeScreen(feedBackLoadDtoList.problemDescribe)">
                    <quill-editor
                      class="notshown"
                      v-model="feedBackLoadDtoList.problemDescribe"
                      ref="notesQuillEditor"
                      disabled
                    >
                    </quill-editor>
                  </div>
                  <!-- <quill-editor class="notshown"
                                v-model="feedBackLoadDtoList.problemDescribe"
                                ref="notesQuillEditor"
                                disabled>
                  </quill-editor> -->
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="24" class="specialCol">
                <el-form-item label="初步排查结果">
                  <div @dblclick="lookInLargeScreen(feedBackLoadDtoList.excludeResult)">
                    <quill-editor
                      class="notshown"
                      v-model="feedBackLoadDtoList.excludeResult"
                      ref="notesQuillEditor"
                      disabled
                    >
                    </quill-editor>
                  </div>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="12">
                <el-form-item label="是否服务请求">
                  <el-radio-group v-model="feedBackLoadDtoList.serverRequestTag" disabled>
                    <el-radio :label="true" class="radioRE"> 是</el-radio>
                    <el-radio :label="false" class="radioRE">否</el-radio>
                  </el-radio-group>
                </el-form-item>
              </el-col>
              <el-col :span="12">
                <el-form-item label="服务请求编号" v-show="feedBackLoadDtoList.serverRequestTag">
                  <el-input v-model="feedBackLoadDtoList.serverRequestNumber" placeholder="" disabled></el-input>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="12">
                <el-form-item label="服务请求创建时间" v-show="feedBackLoadDtoList.serverRequestTag">
                  <!-- <el-input disabled
                            v-model="feedBackLoadDtoList.serverRequestTime"
                            placeholder=""></el-input> -->
                  <span class="dataClass">{{ feedBackLoadDtoList.serverRequestTime | resolvingDate }}</span>
                </el-form-item>
              </el-col>
              <el-col :span="12">
                <el-form-item label="影响类别">
                  <el-select class="userSelect" v-model="feedBackLoadDtoList.influenceCategory" placeholder="" disabled>
                    <el-option
                      v-for="(item, index) in influenceCategory"
                      :key="index"
                      :label="item.title"
                      :value="item.id"
                    >
                    </el-option>
                  </el-select>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="24" class="specialCol">
                <el-form-item label="影响描述">
                  <div @dblclick="lookInLargeScreen(feedBackLoadDtoList.influenceDescribe)">
                    <quill-editor
                      class="notshown"
                      v-model="feedBackLoadDtoList.influenceDescribe"
                      ref="notesQuillEditor"
                      disabled
                    >
                    </quill-editor>
                  </div>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="24">
                <el-form-item label="期望完成时间">
                  <span class="dataClass">{{ feedBackLoadDtoList.expirationDate | resolvingDate }}</span>
                </el-form-item>
              </el-col>
            </el-row>
            <el-row :gutter="10">
              <el-col :span="24" class="specialColFile">
                <el-form-item label="附件">
                  <div v-for="(item, index) in encLosureList" :key="index" style="margin-top: 10px;">
                    <span @click="toDown(item)" class="toDownClass">{{ item ? item.name : '' }}</span>
                  </div>
                </el-form-item>
              </el-col>
            </el-row>
          </el-form>
          <!-- <p>日志详情</p> -->
        </div>
        <el-tabs
          v-model="activeName"
          @tab-click="handleClick"
          style="
                        background: #fff;
                        padding: 15px;
                        border-radius: 5px;
                        margin-top: 30px;
                        margin-bottom: 30px;
                        height: 395px;
                    "
        >
          <el-tab-pane label="相关bug" name="first">
            <el-table
              :data="ChangeBugByFeedBackData"
              style="width: 100%"
              :cell-style="{ textAlign: 'center' }"
              :header-cell-style="{
                textAlign: 'center'
              }"
            >
              <el-table-column prop="turnTag" label="类型">
                <template slot-scope="scope">
                  <!-- slot-scope="scope" -->
                  <span v-if="scope.row.turnTag">转</span>
                  <span v-if="!scope.row.turnTag">绑</span>
                </template>
              </el-table-column>
              <el-table-column prop="zenMasterId" label="BUG ID">
                <template slot-scope="scope">
                  <a :href="scope.row.bugUrl" target="_blank" class="taskSkip">{{ scope.row.zenMasterId }}</a>
                </template>
              </el-table-column>
              <el-table-column prop="statusCn" label="BUG 状态"> </el-table-column>
              <el-table-column prop="keywords" label="计划解决版本/日期"> </el-table-column>
              <el-table-column prop="resolvedBuildName" label="解决版本"> </el-table-column>
              <el-table-column prop="resolutionCn" label="解决方案"> </el-table-column>
              <el-table-column
                align="center"
                label="操作"
                v-if="this.$route.query.buttonStatus && this.$route.query.stageId"
              >
                <template slot-scope="scope">
                  <!-- slot-scope="scope" -->
                  <el-button
                    type="primary"
                    size="mini"
                    @click="toUnBug(scope.row.id)"
                    v-if="!scope.row.turnTag"
                    v-has="'M1108013'"
                    >解除关联</el-button
                  >
                </template>
              </el-table-column>
            </el-table>
          </el-tab-pane>
          <el-tab-pane label="相关需求" name="second">
            <el-table
              :data="ChangeStoryByFeedBackData"
              style="width: 100%"
              :cell-style="{ textAlign: 'center' }"
              :header-cell-style="{
                textAlign: 'center'
              }"
            >
              <el-table-column prop="turnTag" label="类型">
                <template slot-scope="scope">
                  <!-- slot-scope="scope" -->
                  <span v-if="scope.row.turnTag">转</span>
                  <span v-if="!scope.row.turnTag">绑</span>
                </template>
              </el-table-column>
              <el-table-column prop="zenMasterId" label="ID">
                <template slot-scope="scope">
                  <a :href="scope.row.storyUrl" target="_blank" class="taskSkip">{{ scope.row.zenMasterId }}</a>
                </template>
              </el-table-column>
              <el-table-column prop="feedbackLinkStoryType" label="需求类型">
                <template slot-scope="scope">
                  {{ scope.row.feedbackLinkStoryType | transferSeverity(FeedbackLinkStoryTypeEnum) }}
                </template>
              </el-table-column>
              <el-table-column prop="statusCn" label="需求状态"> </el-table-column>
              <el-table-column prop="stageCn" label="需求阶段"> </el-table-column>
              <el-table-column prop="planVersion" label="计划版本"> </el-table-column>
              <el-table-column
                align="center"
                label="操作"
                v-if="this.$route.query.buttonStatus && this.$route.query.stageId"
              >
                <template slot-scope="scope">
                  <!-- slot-scope="scope" -->
                  <el-button
                    type="primary"
                    size="mini"
                    v-if="!scope.row.turnTag"
                    @click="toUnStory(scope.row.id)"
                    v-has="'M1108014'"
                    >解除关联</el-button
                  >
                </template>
              </el-table-column>
            </el-table>
          </el-tab-pane>
          <el-tab-pane label="相关反馈" name="third">
            <el-table
              :data="ThreeList"
              style="width: 100%"
              :cell-style="{ textAlign: 'center' }"
              :header-cell-style="{
                textAlign: 'center'
              }"
            >
              <el-table-column prop="feedBackNumber" label="反馈ID">
                <template slot-scope="scope">
                  <span @click="goToDetail(scope.row.feedBackId)" class="taskSkip">{{ scope.row.feedBackNumber }}</span>
                </template>
              </el-table-column>
              <el-table-column prop="feedBackStatus" label="反馈状态">
                <template slot-scope="scope">
                  <span v-if="scope.row.feedBackStatus === 0">待发布</span>
                  <span v-if="scope.row.feedBackStatus === 1">已发布</span>
                  <span v-if="scope.row.feedBackStatus === 2">已关闭</span>
                  <span v-if="scope.row.feedBackStatus === 3">已终止</span>
                </template>
              </el-table-column>
              <el-table-column prop="closeTheReason" label="反馈解决方案"> </el-table-column>
              <el-table-column
                align="center"
                label="操作"
                v-if="this.$route.query.buttonStatus && this.$route.query.stageId"
              >
                <template slot-scope="scope">
                  <!-- slot-scope="scope" -->
                  <el-button @click="toDelete(scope.row)" size="mini" type="primary" v-has="'M1108015'"
                    >解除关联</el-button
                  >
                </template>
              </el-table-column>
            </el-table>
          </el-tab-pane>
          <el-tab-pane label="相关任务" name="fourth">
            <el-table
              :data="FourList"
              style="width: 100%"
              :cell-style="{ textAlign: 'center' }"
              :header-cell-style="{
                textAlign: 'center'
              }"
            >
              <el-table-column prop="taskNumber" label="任务ID">
                <template slot-scope="scope">
                  <span @click="taskSkip(scope.row)" class="taskSkip"> {{ scope.row.taskNumber }}</span>
                </template>
              </el-table-column>
              <el-table-column prop="taskType" label="任务类型">
                <template slot-scope="scope">
                  <span v-if="scope.row.taskType === 0">反馈</span>
                  <span v-if="scope.row.taskType === 1">BUG</span>
                  <span v-if="scope.row.taskType === 2">需求</span>
                </template>
              </el-table-column>
              <el-table-column prop="sourceId" label="源ID">
                <template slot-scope="scope">
                  <a :href="scope.row.sourceUrl" target="_blank" class="taskSkip">{{ scope.row.sourceId }}</a>
                </template>
              </el-table-column>
              <el-table-column prop="title" label="任务标题"> </el-table-column>
              <el-table-column prop="ctag" label="任务标识">
                <template slot-scope="scope">
                  <span>{{ scope.row.ctag | fliterCtag }}</span>
                </template>
              </el-table-column>
              <el-table-column prop="ctagstatus" label="任务状态">
                <template slot-scope="scope">
                  <span v-if="scope.row.taskStatus === 0">新建</span>
                  <span v-if="scope.row.taskStatus === 1">处理中</span>
                  <span v-if="scope.row.taskStatus === 2">已完成</span>
                </template>
              </el-table-column>
              <el-table-column prop="expectedCompletedDate" label="计划完成时间">
                <template slot-scope="scope">
                  {{ scope.row.expectedCompletedDate | resolvingDate }}
                </template>
              </el-table-column>
              <el-table-column prop="responsibleUserName" label="任务责任人"> </el-table-column>
            </el-table>
          </el-tab-pane>
          <el-tab-pane label="相关会议" name="five">
            <el-table
              :data="aboutMettingData"
              style="width: 100%"
              :cell-style="{ textAlign: 'center' }"
              :header-cell-style="{
                textAlign: 'center'
              }"
            >
              <el-table-column prop="meetingTime" label="会议时间">
                <template slot-scope="scope">
                  {{ scope.row.meetingTime | resolvingDate }}
                </template>
              </el-table-column>
              <el-table-column prop="meetingName" label="会议名称"> </el-table-column>
              <el-table-column prop="nextPlan" label="下一步措施"> </el-table-column>
              <el-table-column prop="v2Master" label="主责任人"> </el-table-column>
            </el-table>
          </el-tab-pane>
          <el-tab-pane label="反馈处理时长" name="six">
            <el-table
              :data="RelevantTimeData"
              border
              class="relevantTimeTable"
              :cell-style="{ textAlign: 'center' }"
              :header-cell-style="{
                textAlign: 'center'
              }"
            >
              <el-table-column>
                <template slot-scope="scope">
                  <div class="C1wrap">
                    <div class="C1title">C1</div>
                    <div v-for="(item, index) in scope.row.stageTimes" :key="index">
                      <div v-for="(citem, cindex) in item.stageTimeDtos" :key="cindex" class="white_space"></div>
                    </div>
                  </div>
                </template>
              </el-table-column>
              <el-table-column label="状态">
                <template slot-scope="scope">
                  <div v-for="(item, index) in scope.row.stageTimes" :key="index" class="evenStatus">
                    <div class="stageTitle">
                      {{ item.stageTitle }}
                    </div>
                    <div v-for="(citem, cindex) in item.stageTimeDtos" :key="cindex" class="white_space"></div>
                  </div>
                </template>
              </el-table-column>
              <el-table-column label="状态停留时长(天)">
                <template slot-scope="scope">
                  <div v-for="(item, index) in scope.row.stageTimes" :key="index" class="evenStatus">
                    <div class="stageTitle">
                      {{ item.stageTime }}
                    </div>
                    <div v-for="(citem, cindex) in item.stageTimeDtos" :key="cindex" class="white_space"></div>
                  </div>
                </template>
              </el-table-column>
              <el-table-column label="所处阶段">
                <template slot-scope="scope">
                  <div v-for="(item, index) in scope.row.stageTimes" :key="index" class="evenStatus">
                    <div v-for="(citem, cindex) in item.stageTimeDtos" :key="cindex" class="white_space single">
                      {{ citem.stageTitle }}
                    </div>
                  </div>
                </template>
              </el-table-column>
              <el-table-column label="阶段停留时长(天)">
                <template slot-scope="scope">
                  <div v-for="(item, index) in scope.row.stageTimes" :key="index" class="evenStatus">
                    <div v-for="(citem, cindex) in item.stageTimeDtos" :key="cindex" class="white_space single">
                      {{ citem.stageTime }}
                    </div>
                  </div>
                </template>
              </el-table-column>
            </el-table>
            <div class="statusTime">C1总时长：{{ c1Time }}</div>
            <div class="statusTime">C2总时长：{{ c2Time }}</div>
            <div class="statusTime">C1环激活次数：{{ c1Steps }}次</div>
            <div class="statusTime">回退到新建处理次数：{{ returnDispose }}次</div>
            <div class="statusTime">回退到研发处理次数：{{ returnDevelopment }}次</div>
          </el-tab-pane>
        </el-tabs>
      </el-col>
      <el-col :span="8">
        <div class="base-form_container">
          <p class="titles" style="margin: 10px 0">日志详情</p>
          <ul>
            <li v-for="(item, index) in systemLogStringList" :key="index">
              <div class="timer">
                <span class="serial">{{ index + 1 }}</span>
                {{ item.substring(0, 19) }}
              </div>
              <div class="context" v-html="item.substring(19)" @dblclick="lookInLargeScreen(item)">
                {{ item.substring(19) }}
              </div>
            </li>
          </ul>
        </div>
      </el-col>
    </el-row>
    <!-- 大图展示区域 -->
    <CommonDialog
      title="图片"
      width="75%"
      v-bind:dialogVisible="detailedContentDialogVisible"
      @on-change-dialogVisible="detailedContentChange"
      class="lookInfo"
      top="5vh"
    >
      <template #body>
        <div class="detailedContentDisplay" v-html="detailedContent">
          {{ detailedContent }}
        </div>
      </template>
    </CommonDialog>
    <!-- 大图展示区域 -->
    <CommonDialog
      title="查看"
      width="75%"
      v-bind:dialogVisible="trContentDialogVisible"
      @on-change-dialogVisible="trContentChange"
      class="lookInfo"
      top="5vh"
    >
      <template #body>
        <div class="detailedContentDisplay" v-html="trContent"></div>
      </template>
    </CommonDialog>
    <ConfirmDialog ref="ConfirmDialog" :childStageList="childStageLists" @refreshPage="onSearch" />
    <SuspendDialog ref="SuspendDialog" @refreshPage="onSearch" />
    <UpdateDialog ref="UpdateDialog" @refreshPage="onSearch" />
    <ApplicationDialog ref="ApplicationDialog" @refreshPage="onSearch" />
    <CloseDialog ref="CloseDialog" @refreshPages="onSearchID" />
    <RebackDialog ref="RebackDialog" @refreshPage="onSearch" />
    <RemoveDialog ref="RemoveDialog" @refreshPage="onSearch" />
    <StartDialog ref="StartDialog" @refreshPage="onSearch" />
    <TaskDialog ref="TaskDialog" @refreshPage="onSearch" />
    <CreatFeedDialog ref="CreatFeedDialog" @refreshPage="onSearch" />
    <TransferDialog ref="TransferDialog" @refreshPage="onSearch" />
    <BugRowsDialog ref="BugRowsDialog" @refreshPage="onSearch" />
    <NeedRowDialog ref="NeedRowDialog" @refreshPage="onSearch" />
  </div>
</template>
<script>
import { FormOptionSet } from '@/api/setting/service.js'
import { FeedBack } from '../../api/feedBack/server'
import CommonDialog from '@/components/commonDialog/commonDialog.vue'
import BugRowsDialog from '@/components/bugRowsDialog/bugRowsDialog.vue'
import NeedRowDialog from '@/components/needRowDialog/needRowDialog.vue'
// 确认弹出框
import ConfirmDialog from '@/components/confirmDialog/confirmDialog.vue'
// 终止弹出框
import SuspendDialog from '@/components/suspendDialog/suspendDialog.vue'
// 更新进度弹出框
import UpdateDialog from '@/components/updateDialog/updateDialog.vue'
// 申请上会弹出框
import ApplicationDialog from '@/components/applicationDialog/applicationDialog.vue'
// 关闭弹出框
import CloseDialog from '@/components/closeDialog/closeDialog.vue'
// 回退弹出框
import RebackDialog from '@/components/rebackDialog/rebackDialog.vue'
// 删除弹出框
import RemoveDialog from '@/components/removeDialog/removeDialog.vue'
// 激活弹出框
import StartDialog from '@/components/startDialog/startDialog.vue'
// 转任务弹出框
import TaskDialog from '@/components/taskDialog/taskDialog.vue'
// 绑定反馈弹出框
import CreatFeedDialog from '@/components/creatFeedDialog/creatFeedDialog.vue'
// 转让弹出框
import TransferDialog from '@/components/transferDialog/transferDialog.vue'

export default {
    name: '',
    components: {
        ConfirmDialog,
        SuspendDialog,
        UpdateDialog,
        ApplicationDialog,
        CloseDialog,
        RebackDialog,
        RemoveDialog,
        StartDialog,
        TaskDialog,
        CreatFeedDialog,
        TransferDialog,
        BugRowsDialog,
        NeedRowDialog,
        CommonDialog
    },
    props: {},
    data() {
        return {
            detailedContent: '',
            detailedContentDialogVisible: false, // 大图展示区域
            trContentDialogVisible: false,
            trContent: '',
            // 上传路径
            fileUpload: `${process.env.VUE_APP_GOLDWIND_BASE_API}/v2/file/upload`,
            // 日志详情列表
            systemLogStringList: [],
            // 反馈详情列表
            feedBackLoadDtoList: {},
            // 相关任务列表
            FourList: [],
            // 相关反馈列表
            ThreeList: [],
            // 相关需求列表
            ChangeStoryByFeedBackData: [],
            // 相关bug列表
            ChangeBugByFeedBackData: [],
            // 默认tab是第一个
            activeName: 'first',
            // 附件列表
            encLosureList: [],
            // 问题类型列表
            marketProjectFirstList: [],
            // 影响类别列表
            influenceCategory: [],
            // 反馈来源列表
            feedBackSourceList: [],
            // 营销项目状态列表
            problemTypeList: [],
            // 阶段列表
            childStageList: [],
            childStageLists: [],
            // 人员列表
            userList: [],
            // 问题类别列表
            marketProjectSecondList: [],
            // 营销项目名称列表
            MarketingProjectName: [],
            // 产品列表
            ProductList: [],
            // 相关任务传入的id
            Relatedtasks: '',
            // 相关反馈传入的id
            Relevancefeedback: '',
            // 处理状态
            buttonStatus: '',
            // 数据的处理状态
            feedBackStatus: '',
            // C1状态
            c1Status: '',
            // C2状态
            c2Status: '',
            // 标识
            ctag: '',
            // 是否是当前登录人
            accountId: false,
            // 当前登录人信息
            accountInformation: {},
            // 表单校验
            rules: {
                feedbackId: [{ required: true, message: ' ', trigger: 'change' }],
                marketing: [{ required: true, message: ' ', trigger: 'change' }],
                productName: [{ required: true, message: ' ', trigger: 'change' }],
                marketstatus: [{ required: true, message: ' ', trigger: 'change' }],
                version: [{ required: true, message: ' ', trigger: 'change' }],
                description: [{ required: true, message: ' ', trigger: 'change' }],
                impactCategory: [{ required: true, message: ' ', trigger: 'change' }]
            },
            // 上传路径
            feedbackUrl: `${process.env.VUE_APP_BASE_API}`,
            // 需求类型列表
            FeedbackLinkStoryTypeEnum: [
                {
                    value: 2,
                    title: '产品需求'
                },
                {
                    value: 1,
                    title: '市场需求'
                },
                {
                    value: 0,
                    title: '原始需求'
                }
            ],
            // 相关会议
            aboutMettingData: [],
            // 相关时长
            RelevantTimeData: [],
            // C1总时长：
            c1Time: '',
            // C2总时长：
            c2Time: '',
            // C1环激活次数：
            c1Steps: '',
            // 回退到新建处理
            returnDispose: '',
            // 回退到研发处理
            returnDevelopment: ''
        }
    },
    computed: {},
    watch: {},
    created() {},
    filters: {
        fliterCtag(val) {
            if (val == 0) {
                return 'C1'
            } else if (val == 1) {
                return 'C2'
            } else {
                return val
            }
        },
        /**
     * @description:文字过滤器
     * @param {String} _val 传入的值
     * @param {Array} _list 定义的转换数组
     */
        transferSeverity(_val, _list) {
            let str = ''
            _list.findIndex(_item => {
                if (_item.value === _val) {
                    str = _item.title
                    return true
                } else {
                    return false
                }
            })
            return str
        },

        /**
     * @description:时间过滤器
     * @param {Date} _val
     * @return {String} str 转换格式后的字符串
     */
        resolvingDate(date) {
            if (!date) {
                return ''
            }
            // date是传入的时间
            const d = new Date(date)
            const month = d.getMonth() + 1 < 10 ? '0' + (d.getMonth() + 1) : d.getMonth() + 1
            const day = d.getDate() < 10 ? '0' + d.getDate() : d.getDate()
            const hours = d.getHours() < 10 ? '0' + d.getHours() : d.getHours()
            const min = d.getMinutes() < 10 ? '0' + d.getMinutes() : d.getMinutes()
            const sec = d.getSeconds() < 10 ? '0' + d.getSeconds() : d.getSeconds()
            const times = d.getFullYear() + '-' + month + '-' + day + ' ' + hours + ':' + min + ':' + sec
            if (times == '1970-01-01 08:00:00') {
                return ''
            } else {
                return times
            }
        }
    },
    mounted() {
        this.getUserList().then(() => {
            this.getCategory(this.$route.query.id)
        })
        this.getChildStageList()
        this.getProductList()
        this.getFeedBackGetSystemLogsAsync(this.$route.query.id)
        this.buttonStatus = this.$route.query.buttonStatus
        this.getuserId()
    },
    methods: {
        releaseVersion(_id) {
            this.$router.push({ path: 'editFeedBack?editId=' + _id })
        },
        detailedContentChange() {
            this.detailedContentDialogVisible = false
            this.detailedContent = ''
        },
        trContentChange() {
            this.trContentDialogVisible = false
            this.trContent = ''
        },
        lookInLargeScreen(content) {
            if (content.indexOf('<img') != -1) {
                const imgReg = /<img.*?(?:>|\/>)/gi
                this.detailedContentDialogVisible = true
                const imgArray = content.match(imgReg)
                for (const i in imgArray) {
                    this.detailedContent += imgArray[i]
                }
            }
            if (content.indexOf('<tr') != -1) {
                this.trContentDialogVisible = true
                this.trContent = content
            }
        },
        /**
     * @description: 返回上一层
     */
        onSearchID(data) {
            const str = localStorage.getItem('onID')
            console.log(data, str)
            this.$refs.TaskDialog.show(data, str)
        },
        onSearch() {
            this.$router.go(0)
        },

        /**
     * @description: 根据反馈Id获取转Bug
     */
        async GetChangeBugByFeedBack() {
            this.ChangeBugByFeedBackData = []
            try {
                const result = await FeedBack.GetChangeBugByFeedBack({
                    feedbackId: this.feedBackLoadDtoList.id
                })
                if (result.success) {
                    this.ChangeBugByFeedBackData = result.data
                }
                // else {
                //     this.$message.error(result.message)
                // }
            } catch (error) {
                // this.$message.error('服务器异常')
                console.log(error)
            }
        },

        /**
     * @description: 根据反馈Id 获得转需求
     */
        async GetChangeStoryByFeedBack() {
            this.ChangeStoryByFeedBackData = []
            try {
                const result = await FeedBack.GetChangeStoryByFeedBack({
                    feedbackId: this.feedBackLoadDtoList.id
                })
                if (result.success) {
                    this.ChangeStoryByFeedBackData = result.data
                }
                // else {
                //     this.$message.error(result.message)
                // }
            } catch (error) {
                // this.$message.error('服务器异常')
                console.log(error)
            }
        },

        //         /**
        //  * @description: 获取当前登录人信息
        //  */
        async getuserId() {
            try {
                const result = await FeedBack.UserGetUserInfoAsync()
                if (result.success) {
                    this.accountInformation = result.data
                }
            } catch (err) {
                console.log(err)
            }
        },

        /**
     * @description: 获取所有列表
     * @param {String} _id 路由携带ID
     */
        async getCategory(_id) {
            try {
                const result = await FeedBack.GetLoadAsync({ id: _id })
                if (result.success) {
                    // console.log(result.data)
                    this.feedBackLoadDtoList = result.data
                    this.feedBackLoadDtoList.createdAt = result.data.createdAt.slice(0, 19)
                    console.log(result.data)
                    if (result.data.fileUrl != '' && result.data.fileUrl != null) {
                        const str = '[' + result.data.fileUrl + ']'
                        this.encLosureList = JSON.parse(str)
                    }
                    // console.log('FEED', result.data.feedBackNumber)
                    this.Relatedtasks = result.data.feedBackNumber
                    this.getAboutMetting(this.Relatedtasks)
                    this.Relevancefeedback = result.data.id
                    this.feedBackStatus = result.data.feedBackStatus
                    this.c1Status = result.data.c1Status
                    this.c1Status = result.data.c1Status
                    this.c2Status = result.data.c2Status
                    if (result.data.creator === this.accountInformation.id) {
                        this.accountId = true
                    } else {
                        this.accountId = false
                    }
                    this.GetChangeBugByFeedBack()
                    this.getPersonDepartment()
                    this.getPersonDepartments()
                    this.getMarketProjectFirstList(result.data.problemTypeParent)
                } else {
                    this.$message.error(result.message)
                }
            } catch (err) {
                // this.$message.error('服务器异常')
            }
        },

        /**
     * @description: 中止方法
     */
        suspendRow() {
            const id = this.feedBackLoadDtoList.id
            this.$refs.SuspendDialog.show(id)
        },

        /**
     * @description: 激活方法
     */
        startRow() {
            const id = this.feedBackLoadDtoList.id
            this.$refs.StartDialog.show(id)
        },

        /**
     * @description: 关闭方法
     */
        closeRow() {
            const id = this.feedBackLoadDtoList.id
            const feedBackNumber = this.feedBackLoadDtoList.feedBackNumber
            this.$refs.CloseDialog.show(id, feedBackNumber)
        },

        /**
     * @description: 确认方法
     */
        confirmRow() {
            const id = this.feedBackLoadDtoList.id
            this.$refs.ConfirmDialog.show(id)
        },

        /**
     * @description: 更新进度方法
     */
        // updateRow() {
        //   const string = JSON.stringify(this.feedBackLoadDtoList);
        //   const stageId = this.$route.query.stageId;
        //   this.$refs.UpdateDialog.show(string, stageId);
        // },
        updateRow() {
            // console.log(this.feedBackLoadDtoList)
            this.feedBackLoadDtoList.operationStatus = this.$route.query.buttonStatus
            const trueID = this.feedBackLoadDtoList.id
            const string = JSON.stringify(this.feedBackLoadDtoList)
            const stageId = this.feedBackLoadDtoList.stage
            this.$refs.UpdateDialog.show(string, stageId, trueID)
        },

        /**
     * @description: 申请上会方法
     */
        application() {
            const str = JSON.stringify(this.feedBackLoadDtoList)
            this.$refs.ApplicationDialog.show(str)
        },

        /**
     * @description: 转任务方法
     */
        taskRow() {
            console.log(11111111111111111111111111111)
            console.log(this.feedBackLoadDtoList, this.feedBackLoadDtoList.feedBackNumber, this.feedBackLoadDtoList.id)
            this.$refs.TaskDialog.show(this.feedBackLoadDtoList.feedBackNumber, this.feedBackLoadDtoList.id)
        },

        bugRows(number) {
            this.$refs.BugRowsDialog.show(number)
        },
        needRow(number) {
            this.$refs.NeedRowDialog.show(number)
        },

        /**
     * @description: 转需求方法
     */
        demandRow() {
            this.$router.push({
                path:
          'turnDemand?productId=' + this.feedBackLoadDtoList.productId + '&feedbackId=' + this.feedBackLoadDtoList.id
            })
        },

        /**
     * @description: 转BUG方法
     */
        bugRow() {
            this.$router.push({
                path: 'turnBug?productId=' + this.feedBackLoadDtoList.productId + '&feedbackId=' + this.feedBackLoadDtoList.id
            })
        },

        /**
     * @description: 绑定反馈方法
     */
        creatFeedRow() {
            const id = this.feedBackLoadDtoList.id
            this.$refs.CreatFeedDialog.show(id)
        },

        /**
     * @description: 绑让方法
     */
        transferRow() {
            const id = this.feedBackLoadDtoList.id
            const productId = this.feedBackLoadDtoList.productId
            this.$refs.TransferDialog.show(id, productId)
        },

        /**
     * @description: 回退方法
     */
        rebackRow() {
            const id = this.feedBackLoadDtoList.id
            this.$refs.RebackDialog.show(id)
        },

        /**
     * @description: 指派人部门
     */
        getPersonDepartment() {
            // this.getUserList().then(() => {
            this.userList.forEach(item => {
                if (item.id == this.feedBackLoadDtoList.userId) {
                    this.feedBackLoadDtoList.designDepartMent = item.department
                }
            })
            // })
        },

        /**
     * @description: 创建人部门
     */
        getPersonDepartments() {
            // this.getUserList().then(() => {
            this.userList.forEach(item => {
                if (item.id == this.feedBackLoadDtoList.creator) {
                    this.feedBackLoadDtoList.creatDepartMent = item.department
                }
            })
            // })
        },

        /**
     * @description: 获取所有产品信息
     */
        async getProductList() {
            try {
                const result = await FeedBack.ProInsertAsync()
                if (result.success) {
                    this.ProductList = result.data
                }
            } catch (err) {
                console.log(err)
            }
        },

        /**
     * @description: 获取所有指派人列表
     * @param {String} _id 组件id
     */
        async getFeedBackGetSystemLogsAsync(_id) {
            try {
                const result = await FeedBack.FeedBackGetSystemLogsAsync({ id: _id })
                if (result.success) {
                    this.systemLogStringList = result.data
                } else {
                    this.$message.error(result.message)
                }
            } catch (err) {
                console.log(err)
                // this.$message.error('服务器异常')
            }
        },

        /**
     * @description: 人员列表数据
     */
        async getUserList() {
            try {
                const result = await FeedBack.GetAllUserAsync()
                if (result.success) {
                    this.userList = result.data
                }
            } catch (err) {
                console.log(err)
            }
        },

        /**
     * @description: 获取相关下拉列表
     * @param {String} type 类型
     */
        async getMarketProjectFirstList(childId) {
            try {
                const result = await FormOptionSet.FormOptionSetGetAllAsync()
                if (result.success) {
                    this.buildTemplateData(result.data, childId)
                    // console.log(result.data)
                } else {
                    this.$message.error(result.message)
                }
            } catch (err) {
                // this.$message.error('服务器异常')
            }
        },
        buildTemplateData(_data, childId) {
            console.log('data<<<<', _data, childId)
            this.MarketingProjectName = _data.marketProjectName
            this.problemTypeList = _data.problemTypeSets
            this.influenceCategory = _data.impactCategorySets

            // problemTypeParent
            this.feedBackSourceList = _data.sourceFeedbackSets
            this.marketProjectFirstList = _data.marketProjects
            let list = []
            _data.marketProjects.forEach(element => {
                if (element.id == childId) {
                    list = element.children
                }
            })
            this.marketProjectSecondList = list
            console.log(list)
        },
        /**
     * @description: 阶段列表
     */
        async getChildStageList() {
            try {
                const result = await FeedBack.GetListChildrenAsync({ type: 'NAME' })
                if (result.success) {
                    this.childStageList = result.data
                    const arr = JSON.parse(JSON.stringify(result.data))
                    for (var i = 0; i < arr.length; i++) {
                        const item = arr[i]
                        if (
                            item.id != '1423154037607493634' &&
              item.id != '1423154076169924610' &&
              item.id != '1423154128091213825'
                        ) {
                            this.childStageLists.push(item)
                        }
                    }
                }
            } catch (err) {
                console.log(err)
            }
        },

        /**
     * @description: tabs
     * @param {Object} tab 所点击的tab
     */
        handleClick(tab) {
            if (tab.label === '相关任务') {
                // console.log('GGGG', this.Relatedtasks)
                this.TaskList(this.Relatedtasks)
            } else if (tab.label === '相关反馈') {
                this.RelevanceList(this.Relevancefeedback)
            } else if (tab.label === '相关bug') {
                this.GetChangeBugByFeedBack()
            } else if (tab.label === '相关会议') {
                this.getAboutMetting(this.Relatedtasks)
            } else if (tab.label === '相关需求') {
                this.GetChangeStoryByFeedBack()
            } else if (tab.label === '反馈处理时长') {
                this.GetRelevantTimeAsync(this.Relevancefeedback)
            }
        },

        /**
     * @description: 相关任务列表
     * @param {String} feedBackNumber 任务ID
     */
        async TaskList(feedBackNumber) {
            this.FourList = []
            try {
                const result = await FeedBack.TaskGetByFeedBackNumber(feedBackNumber)
                if (result.success) {
                    for (const item of result.data) {
                        if (item.ctag === 'C2') {
                            item.ctagstatus = item.c2Status
                        }
                        if (item.ctag === 'C1') {
                            item.ctagstatus = item.c1Status
                        }
                    }
                    this.FourList = result.data
                } else {
                    this.$message.error(result.message)
                }
            } catch (err) {
                // this.$message.error('服务器异常')
            }
        },

        /**
     * @description: 相关反馈列表
     * @param {String} id 反馈ID
     */
        async RelevanceList(id) {
            this.ThreeList = []
            try {
                const result = await FeedBack.FeedBackGetRelevanceFeedbacAsync({
                    id: id
                })
                if (result.success) {
                    this.ThreeList = result.data
                } else {
                    this.$message.error(result.message)
                }
            } catch (err) {
                // this.$message.error('服务器异常')
            }
        },
        async LinkFeedBackAsync(objParams) {
            try {
                const result = await FeedBack.LinkFeedBackOperationAsync(objParams)
                if (result.success) {
                    this.RelevanceList(this.Relevancefeedback)
                    this.getFeedBackGetSystemLogsAsync(this.$route.query.id)
                    this.$message({
                        type: 'success',
                        message: '解绑成功!'
                    })
                }
            } catch (error) {
                console.log(error)
            }
        },
        toDelete(data) {
            this.$confirm('此操作将永久解绑, 是否继续?', '提示', {
                confirmButtonText: '确定',
                cancelButtonText: '取消',
                type: 'warning'
            })
                .then(() => {
                    console.log(data)
                    console.log(this.Relevancefeedback)

                    const objParams = {
                        id: data.id,
                        operation: 1,
                        linkFeedBackNumber: data.feedBackId
                    }
                    this.LinkFeedBackAsync(objParams)
                })
                .catch(() => {
                    this.$message({
                        type: 'info',
                        message: '已取消操作'
                    })
                })
        },

        /**
     * @description: 解绑反馈
     * @param {Object} data 详情数据
     */
        async toUnStory(data) {
            this.$confirm('此操作将永久解绑, 是否继续?', '提示', {
                confirmButtonText: '确定',
                cancelButtonText: '取消',
                type: 'warning'
            })
                .then(() => {
                    this.unbindConnect(data)
                })
                .catch(() => {
                    this.$message({
                        type: 'info',
                        message: '已取消操作'
                    })
                })
        },
        async unbindConnect(data) {
            try {
                const result = await FeedBack.UnBindStory({
                    id: data
                })
                if (result.success) {
                    this.GetChangeStoryByFeedBack()
                    this.getFeedBackGetSystemLogsAsync(this.$route.query.id)
                    this.$message({
                        type: 'success',
                        message: '解绑成功!'
                    })
                }
            } catch (error) {
                console.log(error)
            }
        },
        async unbindBug(data) {
            try {
                const result = await FeedBack.UnBindBug({
                    id: data
                })
                if (result.success) {
                    console.log(result.data)
                    this.GetChangeBugByFeedBack()
                    this.getFeedBackGetSystemLogsAsync(this.$route.query.id)
                    this.$message({
                        type: 'success',
                        message: '解绑成功!'
                    })
                }
            } catch (error) {
                console.log(error)
            }
        },
        toUnBug(data) {
            this.$confirm('此操作将永久解绑, 是否继续?', '提示', {
                confirmButtonText: '确定',
                cancelButtonText: '取消',
                type: 'warning'
            })
                .then(() => {
                    this.unbindBug(data)
                })
                .catch(() => {
                    this.$message({
                        type: 'info',
                        message: '已取消操作'
                    })
                })
        },

        /**
     * @description: 返回上一层
     * @param {*}
     * @return {*}
     */
        togoback() {
            if (this.$route.query.activeName != null) {
                if (this.$route.query.overRangeMetting != null) {
                    this.$router.push({
                        path:
              'myWait?activeName=' +
              this.$route.query.activeName +
              '&overRangeMetting=' +
              this.$route.query.overRangeMetting
                    })
                } else {
                    this.$router.push({
                        path: 'myWait?activeName=' + this.$route.query.activeName
                    })
                }
            } else {
                this.$router.go(-1)
                // if (this.$route.query.goindex === 'true') {
                //     this.$router.push('/')
                // } else {
                //     this.$router.back(-1)
                // }
            }
        },
        /**
     * @description: 文件下载
     */
        toDown(item) {
            // console.log(item)
            if (item.url) {
                window.location.href = `${process.env.VUE_APP_GOLDWIND_BASE_API}/v2/file/download?fileSourceId=${item.url}`
            }
        },

        /**
     * @description: 相关会议
     * @param {String} _val 详情id
     */
        async getAboutMetting(_val) {
            this.aboutMettingData = []
            try {
                const result = await FeedBack.AboutMeeting(_val)
                if (result.success) {
                    this.aboutMettingData = result.data
                } else {
                    this.$message.error(result.message)
                }
            } catch (err) {
                // this.$message.error('服务器异常')
                console.log(err)
            }
        },

        /**
     * @description: 反馈处理时长
     * @param {String} _val 详情id
     */
        async GetRelevantTimeAsync(_id) {
            this.RelevantTimeData = []
            try {
                const result = await FeedBack.GetRelevantTimeAsync({ id: _id })
                if (result.success) {
                    const arr = []
                    arr.push(result.data)
                    this.RelevantTimeData = arr
                    this.c1Time = this.RelevantTimeData[0].c1Time
                    this.c2Time = this.RelevantTimeData[0].c2Time
                    this.returnDispose = this.RelevantTimeData[0].newNumber
                    this.returnDevelopment = this.RelevantTimeData[0].underDevelopmentNumber
                    this.c1Steps = this.RelevantTimeData[0].activateNumber
                } else {
                    this.$message.error(result.message)
                }
            } catch (err) {
                // this.$message.error('服务器异常')
                console.log(err)
            }
        },

        /**
     * @description: 相关任务跳转
     * @param {Object} row 反馈详情数据
     */
        taskSkip(row) {
            this.$router.push({
                path: 'taskDetail?id=' + row.taskNumber
            })
        },
        goToDetail(id) {
            this.$router.push({
                path: 'linkDetail?id=' + id
            })
        }
    }
}
</script>
<style scoped lang="less">
::v-deep .el-input__inner {
  height: 30px !important;
}
// ::v-deep .el-input__inner {
//   width: 217px;
// }
ul > li {
  list-style: none;
}
.ql-editor {
  // border-left: 1px solid #eaecef;
  // border-right: 1px solid #eaecef;
  // border-bottom: 1px solid #eaecef;
  box-sizing: border-box;
  min-height: 80px;
}
.base-form_container {
  font-size: 14px;
  .context {
    padding-bottom: 5px;
    border-bottom: 1px solid rgb(199, 198, 198);
  }
}
::v-deep .base-form_container .el-form-item__label {
  background: none !important;
}
::v-deep .base-form_container {
  img {
    max-width: 100px;
    max-height: 100px;
  }

  ul > li {
    margin: 20px 15px;
  }
  ol > li {
    margin-left: 15px;
  }
}
.timer {
  margin-bottom: 5px;
  font-size: 14px;
  .serial {
    display: inline-block;
    color: #ffffff;
    background: cornflowerblue;
    width: 18px;
    height: 18px;
    text-align: center;
    line-height: 18px;
    font-size: 12px;
    font-weight: 400;
    border-radius: 50%;
  }
}
.context {
  font-size: 16px;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 5px;
  white-space: normal;
  word-break: break-all;
  word-wrap: break-word;
}
::v-deep .el-table__body-wrapper {
  overflow-y: auto;
}
.base-form_container {
  overflow-y: auto;
  height: 1602px;
  background: #fff;
  padding: 15px;
  border-radius: 5px;
  .custom_input {
    ::v-deep .el-form-item__content {
      width: 100px !important;
    }
    .custom_input_col {
      ::v-deep .el-form-item__content {
        margin-left: 85px !important;
      }
    }
  }
  .custom_row {
    height: auto !important;
    ::v-deep .el-form-item__content {
      margin-top: 15px !important;
      width: 800px !important;
    }
    ::v-deep .el-form-item__label {
      height: 80px !important;
    }
  }
  .detail-content {
    line-height: 40px !important;
    text-align: center;
    background: #eaecef;
  }
  .notes-history__content {
    margin-left: 20px;
    padding-bottom: 20px;
    font-size: 14px;
    color: #333;
    .notes-history__content-title {
      line-height: 25px;
      .user-name {
        color: #0052cc;
      }
    }
    .notes-history__content-text {
      line-height: 20px;
      font-size: 12px;
      word-wrap: break-word;
    }
  }
  ::v-deep .el-form-item__content {
    line-height: 40px !important;
    margin-left: 170px !important;
  }
  ::v-deep .el-row {
    border-bottom: 1px solid #cad0d8;
    height: auto !important;
  }
  ::v-deep .el-form-item__label {
    background: #eaecef;
  }
  ::v-deep .el-form-item {
    margin-bottom: 0 !important;
  }
  ::v-deep .ql-toolbar {
    background: #c8cdd5 !important;
  }
  ::v-deep .ql-container {
    border: initial;
    border-bottom: 1px solid #ccc !important;
  }
}
::v-deep .el-upload-list__item {
  transition: initial;
}
::v-deep .el-tabs__content {
  height: 350px;
  overflow-y: auto;
}
.button {
  width: 138px;
  height: 32px;
  line-height: 30px;
  text-align: center;
  font-size: 14px;
  border-radius: 15px;
  cursor: pointer;
  background: #3579e0;
  color: #ffffff;
  margin: 0;
  padding: 0;
  position: relative;
  left: 320px;
  top: 47px;
}
.top {
  width: 88%;
  min-width: 510px;
  height: 70px;
  background: #ffffff;
  line-height: 70px;
  position: fixed;
  z-index: 333;
  top: 0;
  .left {
    width: 10px;
    height: 10px;
    display: inline-block;
    border-top: 2px solid #867f7a;
    border-right: 2px solid #867f7a;
    transform: rotate(-135deg);
    margin-left: 45px;
    margin-right: 12px;
    cursor: pointer;
  }
  .title {
    font-size: 24px;
    font-family: Microsoft YaHei;
    font-weight: 400;
    color: #333333;
    line-height: 64px;
  }
  ::v-deep .el-col-8 {
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  ::v-deep .el-col-16 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
/* 取消按钮样式 */
.submitCancel {
  width: 70px;
  height: 30px;
  background: #ffffff;
  border: 1px solid #bfbfbf;
  border-radius: 5px;
  padding: 0;
  font-size: 14px;
  font-family: Microsoft YaHei;
  font-weight: 400;
  color: #999999;
  &:hover {
    background: rgba(204, 204, 204, 0.5);
    border: 1px solid #bfbfbf;
    border-radius: 5px;
  }
}
/* 确认按钮样式 */
.submitReme {
  width: 70px;
  height: 30px;
  border-radius: 5px;
  font-size: 14px;
  font-family: Microsoft YaHei;
  font-weight: 400;
  padding: 0;
  background: #3b8af7;
  color: #ffffff;
  border: 1px solid #3b8af7;
  &:hover {
    background: #3579e0;
    opacity: 0.8;
    border-radius: 5px;
  }
  &.delete {
    width: 70px;
    height: 30px;
    border-radius: 5px;
    font-size: 14px;
    font-family: Microsoft YaHei;
    font-weight: 400;
    padding: 0;
    background: #ed4747;
    color: #ffffff;
    border: 1px solid #ed4747;
  }
}
/* 更多样式开始 */
/* 更多下拉样式开始 */
// .el-dropdown-menu {
//     .el-dropdown-menu__item {
//         display: flex;
//         align-items: center;
//         &:nth-child(1):hover .hoverMenuItem {
//             background: url("../../assets/image/dropDownMenu/Ican_4_Selected@2x.png")
//                 no-repeat center;
//             background-size: contain;
//         }
//         &:nth-child(2):hover .hoverMenuItem {
//             background: url("../../assets/image/dropDownMenu/Btn_16_Selected@2x.png")
//                 no-repeat center;
//             background-size: contain;
//         }
//         &:nth-child(3):hover .hoverMenuItem {
//             background: url("../../assets/image/dropDownMenu/Ican_6_Selected@2x.png")
//                 no-repeat center;
//             background-size: contain;
//         }
//         &:nth-child(4):hover .hoverMenuItem {
//             background: url("../../assets/image/dropDownMenu/Ican_7_Selected@2x.png")
//                 no-repeat center;
//             background-size: contain;
//         }
//         &:nth-child(5):hover .hoverMenuItem {
//             background: url("../../assets/image/dropDownMenu/Btn_15_Selected@2x.png")
//                 no-repeat center;
//             background-size: contain;
//         }
//         &:nth-child(6):hover .hoverMenuItem {
//             background: url("../../assets/image/dropDownMenu/Ican_8_Selected@2x.png")
//                 no-repeat center;
//             background-size: contain;
//         }
//         &:nth-child(7):hover .hoverMenuItem {
//             background: url("../../assets/image/dropDownMenu/Btn_17_Selected@2x.png")
//                 no-repeat center;
//             background-size: contain;
//         }
//     }
// }
.hoverMenuItem {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 5px;
  // padding-top: 10px;
  &.application {
    background: url('../../assets/image/options/Ican_4_Normal@2x.png') no-repeat center;
    background-size: contain;
  }
  &.turnTask {
    background: url('../../assets/image/dropDownMenu/Btn_16_Normal@2x.png') no-repeat center;
    background-size: contain;
  }
  &.turnDemand {
    background: url('../../assets/image/options/Ican_6_Normal@2x.png') no-repeat center;
    background-size: contain;
  }
  &.turnBug {
    background: url('../../assets/image/options/Ican_7_Normal@2x.png') no-repeat center;
    background-size: contain;
  }
  &.isDelate {
    background: url('../../assets/image/options/Btn_14_Normal@2x.png') no-repeat center;
    background-size: contain;
  }
  &.creatFeed {
    background: url('../../assets/image/dropDownMenu/Btn_15_Normal@2x.png') no-repeat center;
    background-size: contain;
  }
  &.transfer {
    background: url('../../assets/image/dropDownMenu/Ican_8_Normal@2x.png') no-repeat center;
    background-size: contain;
  }
  &.comment {
    background: url('../../assets/image/dropDownMenu/Btn_17_Normal@2x.png') no-repeat center;
    background-size: contain;
  }
}
/* 更多下拉样式结束 */
.setting_btn {
  width: 70px;
  height: 30px;
  background: #eaf2ff;
  box-sizing: border-box;
  border: 1px solid #3579e0;
  border-radius: 5px;
  font-size: 12px;
  line-height: 0;
  padding: 0ch;
  font-family: Microsoft YaHei;
  font-weight: 400;
  color: #3579e0;
  &:hover {
    background-color: #3579e0;
    color: #ffffff;
  }
  span {
    margin-left: 5px;
    width: 14px;
    height: 14px;
    display: inline-block;
    background: url(../../assets/image/icon/Nav_Icon_ArrowDown1.png);
    background-size: cover;
  }
}
.detailsForm {
  ::v-deep .el-input__inner {
    width: 100%;
    height: 41px !important;
    border-radius: unset;
    background: #fff;
    border: none;
  }
  ::v-deep .el-select {
    width: 100%;
  }
  .wordContent {
    padding-left: 10px;
    height: 40px !important;
    font-size: 12px;
    font-weight: 400;
    color: #333333;
    line-height: 50px;
  }
  ::v-deep .el-form-item {
    margin: 0;
    border: 1px solid #dcdfe6;
    margin-right: -1px;
    margin-bottom: -1px;
  }
  ::v-deep .el-form-item .el-form-item__label {
    border-right: 1px solid #dcdfe6;
    height: 41px;
    line-height: 50px;
    background-color: #f5f7fa;
  }
}
::v-deep .detailsForm .el-col,
::v-deep .detailsForm .el-row {
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
.titles {
  font-size: 16px;
  padding-left: 15px;
}
.descriptHeads {
  text-align: right;
  padding: 20px 12px 0 0;
  display: block;
  min-height: 80px;
  width: 137px;
  border-left: 1px solid #dcdfe6;
  background-color: #f5f7fa;
  border-right: 1px solid #dcdfe6;
}
.descriptContent {
  width: 880px;
  border-right: 1px solid #dcdfe6;
}
.specialCol {
  .contents {
    overflow-wrap: break-word;
    line-height: 1.6;
    word-break: break-all;
    overflow: hidden;
    padding-left: 10px;
  }
}
::v-deep .specialCol .el-form-item__label {
  width: 126px !important;
  min-height: 200px;
  padding-top: 10px;
  // height: 100%!important;
  line-height: unset !important;
}
::v-deep .specialColFile .el-form-item__label {
  width: 126px !important;
  min-height: 150px;
  padding-top: 10px;
  // height: 100%!important;
  line-height: unset !important;
}

::v-deep .quill-editor {
  border: none;
}
// ::v-deep .ql-container.ql-snow {
//   border: none;
// }
::v-deep .ql-toolbar.ql-snow {
  display: flex;
  // align-items: center;
  flex-wrap: wrap;
  align-content: flex-start;
  height: 60px;
  // border: none;
  border-bottom: 1px solid rgb(247, 247, 250);
  .ql-formats {
    display: flex;
  }
}
::v-deep .ql-snow .ql-picker.ql-size {
  width: 79px;
  line-height: 25px;
}
::v-deep .ql-editor {
  height: 139px;
  // border: none;
  overflow: auto;
}
::v-deep .ql-snow .ql-picker.ql-header .ql-picker-label::before,
.ql-snow .ql-picker.ql-header .ql-picker-item::before {
  height: 57px;
  position: relative;
  top: -7px;
  content: 'Normal';
}
::v-deep .ql-toolbar.ql-snow .ql-formats {
  margin-right: 0;
}

::v-deep .notshown .ql-toolbar.ql-snow {
  display: none;
}
::v-deep .notshown .ql-container {
  border: none;
  padding: 0;
}
/* radio样式调整 */
.radioRE {
  margin-top: 10px;
  margin-left: 8px;
}
/* 反馈处理时长--最小单元格 */
.white_space {
  width: 100%;
  height: 30px;
  line-height: 30px;
  text-align: center;
  &.single {
    border-bottom: 1px solid #eee;
  }
  // outline: 1px solid black;
}
/* C1 合并格 */
.C1wrap {
  position: relative;
  .C1title {
    position: absolute;
    top: 50%;
    left: 50%;
    font-size: 16px;
    font-weight: bold;
    transform: translate(-50%, -50%);
  }
}
/* 状态合并格 */
.evenStatus {
  position: relative;
  box-sizing: border-box;
  border-bottom: 1px solid #eee;
  &:last-child {
    border-bottom: none;
  }
  .stageTitle {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
.evenStatus .stageTitle:last-child {
  border-bottom: none;
}
::v-deep .el-dropdown {
  margin-left: 10px;
}
.el-dropdown-menu {
  .el-dropdown-menu__item {
    display: flex;
    align-items: center;
    padding: 0 !important;
    div {
      width: 100%;
      text-align: center;
      display: flex;
      align-items: center;
      padding: 0 15px;
    }
  }
  .applicationItem:hover .hoverMenuItem {
    background: url('~@/assets/image/dropDownMenu/Ican_4_Selected@2x.png') no-repeat center;
    background-size: contain;
  }

  .turnTaskItem:hover .hoverMenuItem {
    background: url('~@/assets/image/dropDownMenu/Btn_16_Selected@2x.png') no-repeat center;
    background-size: contain;
  }

  .turnDemandItem:hover .hoverMenuItem {
    background: url('~@/assets/image/dropDownMenu/Ican_6_Selected@2x.png') no-repeat center;
    background-size: contain;
  }

  .turnBugItem:hover .hoverMenuItem {
    background: url('~@/assets/image/dropDownMenu/Ican_7_Selected@2x.png') no-repeat center;
    background-size: contain;
  }

  .isDelateItem:hover .hoverMenuItem {
    background: url('~@/assets/image/dropDownMenu/Btn_14_Selected@2x.png') no-repeat center;
    background-size: contain;
  }

  .creatFeedItem:hover .hoverMenuItem {
    background: url('~@/assets/image/dropDownMenu/Btn_15_Selected@2x.png') no-repeat center;
    background-size: contain;
  }

  .transferItem:hover .hoverMenuItem {
    background: url('~@/assets/image/dropDownMenu/Ican_8_Selected@2x.png') no-repeat center;
    background-size: contain;
  }
}
::v-deep .relevantTimeTable.el-table .cell,
.el-table--border td:first-child .cell,
.el-table--border th:first-child .cell {
  padding-left: 0px;
}
::v-deep .relevantTimeTable.el-table .cell {
  padding-right: 0px;
}
::v-deep .relevantTimeTable.el-table--small td {
  padding: 0;
}
::v-deep .relevantTimeTable.el-table__body-wrapper {
  height: 0px;
}
.statusTime {
  width: 100%;
  box-sizing: border-box;
  font-size: 12px;
  border: 1px solid #eee;
  padding: 4px;
  margin-top: 5px;
}
.bugLink {
  color: #333;
  text-decoration: none;
}
.feedBackSkip {
  text-decoration: none;
  color: #333333;
}
.taskSkip {
  color: #3579e0;
  text-decoration: underline;
  &:hover {
    color: #3579e0;
    cursor: pointer;
  }
}
.toDownClass {
  color: #3579e0;
  text-decoration: underline;
  margin: 0 10px;
  &:hover {
    color: #3579e0;
    cursor: pointer;
  }
}
.dataClass {
  margin-left: 15px;
  line-height: 41px;
}
.lookInfo .el-dialog {
  height: 785px;
}

.detailedContentDisplay {
  overflow: hidden;
  flex-direction: column;
  max-width: 1440px;

  ::v-deep img {
    display: block;
    margin-bottom: 10px;
    margin-top: 10px;
    border-radius: 8px;
    max-width: 100% !important;
  }
}

::v-deep .lookInfo .el-dialog__body {
  height: 735px;
}
::v-deep .ql-editor {
  height: 130px;
  overflow: auto;
  /*滚动条样式*/
  &::-webkit-scrollbar {
    /*滚动条整体样式*/
    width: 5px;
    height: 32px;
  }
  &::-webkit-scrollbar-thumb {
    /*滚动条里面小方块*/
    background: #ccc;
    border-radius: 3px;
  }
  &::-webkit-scrollbar-track {
    /*滚动条里面轨道*/
    border-radius: 0;
    background: transparent;
  }

  img {
    width: 100px;
    height: 100px;
  }
}
</style>
<style scoped lang="less" src="@/assets/style/feedBackDialog.less"></style>
<style scoped>
::v-deep .ql-editor li {
  list-style-type: decimal !important;
  list-style-position: inside !important;
}
::v-deep .ql-editor ul > li:before {
  content: '\2022';
}

::v-deep .ql-editor ul > li::marker {
  content: '';
  display: none;
}

::v-deep .ql-editor li:before {
  display: inline-block;
  white-space: nowrap;
  width: 1.2em;
}
</style>
